package com.yuandian.api.business_monitor.vo;

import com.yuandian.utils.IpUtils;
import lombok.Data;

/**
 * <p>
 * 网端详情
 * <p>
 *
 * @author lijunhang
 * @date 2022/5/30
 * @since 1.0.0
 */
@Data
public class SystemLinkPointDetailVo {

    /**
     * 系统id
     */
    private String systemId;

    /**
     * 系统名称
     */
    private String systemName;

    /**
     * 网端id
     */
    private String segmentId;

    /**
     * 网端名称
     */
    private String segmentName;

    /**
     * 健康度
     */
    private Double healthRate;

	/**
	 * 响应IP
	 */
    private String responseIp;

	/**
	 * 响应端口
	 */
    private String responsePort;

	/**
	 * 字节-响应总数
	 */
    private Long totalRequestBytes;

	/**
	 * 字节-发送总数
	 */
    private Long totalResponseBytes;

	/**
	 * 字节-总数
	 */
    private Long totalBytes;

	/**
	 * 总包数
	 */
    private Long totalPackets;

	/**
	 *
	 * 响应数
	 */
    private Long totalResponseNums;

	/**
	 * 响应耗时(微秒)
	 */
    private Double avgServerResponseTime;

	/**
	 * 会话数
	 */
    private Long totalNewSessionsNums;

	/**
	 *
	 * 链接失败会话数
	 */
    private Long totalConnectFail;

	/**
	 *
	 * 建链耗时(微秒)
	 */
    private Double avgConnectTime;

	/**
	 * 网络传输耗时(微秒)
	 */
    private Double avgNetworkTime;

	/**
	 *
	 * 零窗口数
	 */
    private Long totalWindowEvents;

	/**
	 *重置包数
	 */
    private Long totalResetPackets;

	/**
	 * 重传包数
	 */
    private Long totalRetryPackets;

	/**
	 * SSL告警会话数
	 */
    private Long totalSslAlertCount;

	/**
	 * 告警会话数
	 */
    private Long totalAlarmCount;

    public void setResponseIp(String responseIp) {
        this.responseIp = IpUtils.decimalIpToStr(responseIp);
    }
}
